!function(e){var t=window.webpackHotUpdate;window.webpackHotUpdate=function(e,n){!function(e,t){if(!y[e]||!b[e])return;for(var n in b[e]=!1,t)Object.prototype.hasOwnProperty.call(t,n)&&(h[n]=t[n]);0==--m&&0===w&&E()}(e,n),t&&t(e,n)};var n,i=!0,o="e1fa211d2de6a86d0132",r={},a=[],s=[];function l(e){var t=C[e];if(!t)return $;var i=function(i){return t.hot.active?(C[i]?-1===C[i].parents.indexOf(e)&&C[i].parents.push(e):(a=[e],n=i),-1===t.children.indexOf(i)&&t.children.push(i)):(console.warn("[HMR] unexpected require("+i+") from disposed module "+e),a=[]),$(i)},o=function(e){return{configurable:!0,enumerable:!0,get:function(){return $[e]},set:function(t){$[e]=t}}};for(var r in $)Object.prototype.hasOwnProperty.call($,r)&&"e"!==r&&"t"!==r&&Object.defineProperty(i,r,o(r));return i.e=function(e){return"ready"===u&&p("prepare"),w++,$.e(e).then(t,(function(e){throw t(),e}));function t(){w--,"prepare"===u&&(_[e]||k(e),0===w&&0===m&&E())}},i.t=function(e,t){return 1&t&&(e=i(e)),$.t(e,-2&t)},i}function c(t){var i={_acceptedDependencies:{},_declinedDependencies:{},_selfAccepted:!1,_selfDeclined:!1,_selfInvalidated:!1,_disposeHandlers:[],_main:n!==t,active:!0,accept:function(e,t){if(void 0===e)i._selfAccepted=!0;else if("function"==typeof e)i._selfAccepted=e;else if("object"==typeof e)for(var n=0;n=0&&i._disposeHandlers.splice(t,1)},invalidate:function(){switch(this._selfInvalidated=!0,u){case"idle":(h={})[t]=e[t],p("ready");break;case"ready":j(t);break;case"prepare":case"check":case"dispose":case"apply":(v=v||[]).push(t)}},check:O,apply:P,status:function(e){if(!e)return u;d.push(e)},addStatusHandler:function(e){d.push(e)},removeStatusHandler:function(e){var t=d.indexOf(e);t>=0&&d.splice(t,1)},data:r[t]};return n=void 0,i}var d=[],u="idle";function p(e){u=e;for(var t=0;t0;){var o=i.pop(),r=o.id,a=o.chain;if((d=C[r])&&(!d.hot._selfAccepted||d.hot._selfInvalidated)){if(d.hot._selfDeclined)return{type:"self-declined",chain:a,moduleId:r};if(d.hot._main)return{type:"unaccepted",chain:a,moduleId:r};for(var s=0;s ")),E.type){case"self-declined":i.onDeclined&&i.onDeclined(E),i.ignoreDeclined||(P=new Error("Aborted because of self decline: "+E.moduleId+I));break;case"declined":i.onDeclined&&i.onDeclined(E),i.ignoreDeclined||(P=new Error("Aborted because of declined dependency: "+E.moduleId+" in "+E.parentId+I));break;case"unaccepted":i.onUnaccepted&&i.onUnaccepted(E),i.ignoreUnaccepted||(P=new Error("Aborted because "+u+" is not accepted"+I));break;case"accepted":i.onAccepted&&i.onAccepted(E),j=!0;break;case"disposed":i.onDisposed&&i.onDisposed(E),N=!0;break;default:throw new Error("Unexception type "+E.type)}if(P)return p("abort"),Promise.reject(P);if(j)for(u in b[u]=h[u],m(_,E.outdatedModules),E.outdatedDependencies)Object.prototype.hasOwnProperty.call(E.outdatedDependencies,u)&&(w[u]||(w[u]=[]),m(w[u],E.outdatedDependencies[u]));N&&(m(_,[E.moduleId]),b[u]=O)}var D,A=[];for(l=0;l<_.length;l++)u=_[l],C[u]&&C[u].hot._selfAccepted&&b[u]!==O&&!C[u].hot._selfInvalidated&&A.push({module:u,parents:C[u].parents.slice(),errorHandler:C[u].hot._selfAccepted});p("dispose"),Object.keys(y).forEach((function(e){!1===y[e]&&function(e){delete installedChunks[e]}(e)}));var q,M,F=_.slice();for(;F.length>0;)if(u=F.pop(),d=C[u]){var T={},H=d.hot._disposeHandlers;for(c=0;c=0&&U.parents.splice(D,1))}}for(u in w)if(Object.prototype.hasOwnProperty.call(w,u)&&(d=C[u]))for(M=w[u],c=0;c=0&&d.children.splice(D,1);p("apply"),void 0!==f&&(o=f,f=void 0);for(u in h=void 0,b)Object.prototype.hasOwnProperty.call(b,u)&&(e[u]=b[u]);var L=null;for(u in w)if(Object.prototype.hasOwnProperty.call(w,u)&&(d=C[u])){M=w[u];var R=[];for(l=0;le.length)&&(t=e.length);for(var n=0,i=Array(t);n0){var e=this._queue.shift();switch(e.type){case"pageview":this.trackPageview.apply(this,e.args);break;case"event":this.trackEvent.apply(this,e.args)}this._flushQueue()}else this._queue=null},trackEvent:function(e,t,n,i){if(this._ready)this.service.trackEvent(e,t,n,i);else{var o={type:"event",args:arguments};this._queue.push(o),this._logger.console.info(this._logger.name+": Adding Event to Queue.",o)}},trackPageview:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(this._ready)this.service.trackPageview(e,t,n);else{var i={type:"pageview",args:arguments};this._queue.push(i),this._logger.console.info(this._logger.name+": Adding Pageview to Queue.",i)}},setCustomContexts:function(e){this.model.settings.customContexts=e}};var i=function(e,t){this.model=e,this._callback=t,this._logger=this.model.logger,this._normalizer=new s(this.model),this.ready=!1,this.loading=!1,this.snowplow=null};i.prototype={start:function(){if(!this.ready&&!this.loading){var e=this;this.loading=!0;var t=[],n=this.model.settings.snowplow.appId,i=this.model.settings.snowplow.collectorUrl;if(n){this._logger.console.info(this._logger.name+": Loading Snowplow Library.");var o=this._loadSnowPlow(n,i);t.push(o)}Promise.all(t).then((function(){e.loading=!1,e.ready=!0,window.snowplow?(e._logger.console.info(e._logger.name+": Loading Snowplow Library Complete."),e.snowplow=window.snowplow):e.snowplow=function(){},e._callback&&(e._callback(),e._callback=null)}))}},getSnowplowContext:function(){var e={};return e.accountSlug=this.model.settings.meta.account,e.themeSlug=this.model.settings.meta.theme,e.templateName=this.model.settings.meta.template,e.templateNameFromMapping=this.model.settings.meta.templateNameFromMapping,e.presetID=this.model.settings.meta.preset,e.cartType=this.model.settings.meta.cartType,{schema:this.model.settings.snowplow.jsonSchema,data:e}},getPerformanceData:function(){var e={},t=window.performance;if(!t)return e;var n=t.timing;return n?(n.loadEventEnd>0&&n.navigationStart>0&&(e.page_load_time=n.loadEventEnd-n.navigationStart),n.responseEnd>0&&n.navigationStart>0&&(e.request_response_time=n.responseEnd-n.navigationStart),n.domComplete>0&&n.domLoading>0&&(e.render_time=n.domComplete-n.domLoading),e):e},trackEvent:function(e,t,n,i){if(this.ready){if(this._logger.console.group(this._logger.name+": Running Service.trackEvent()."),this._normalizer.event(e,t,n,i)){var o=[this.getSnowplowContext()].concat(a(this.model.settings.customContexts));this._logger.console.info(this._logger.name+": snowplow('trackStructEvent') Payload ",JSON.parse(JSON.stringify({category:e,action:t,label:n,value:i,snowplowContexts:o}))),this.snowplow("trackStructEvent",{category:e,action:t,label:n,value:i,context:o}),this._logger.console.info(this._logger.name+": Event snowplow('trackStructEvent') Complete")}else this._logger.console.warn(this._logger.name+": None or invalid data provided to Service.trackEvent(). Request ignored.");this._logger.console.groupEnd()}else this._logger.console.warn(this._logger.name+": Service.trackEvent() called before Service is ready. Ignoring request.")},trackPageview:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(this.ready){var i=this;this._logger.console.group(this._logger.name+": Running Service.trackPageview().");var r=this._normalizer.pageview(e,t);Object.assign(r,this.getPerformanceData());var s=this.model.settings.meta.theme,l=this.model.settings.meta.template,c=this.model.settings.meta.templateNameFromMapping,d=this.model.settings.meta.preset,u=this.model.settings.meta.account;Object.assign(r,o({theme:s,template:l,preset:d,account:u,templateNameFromMapping:c},n)),this._logger.console.info(this._logger.name+": Normalized Pageview Payload Overrides.",JSON.parse(JSON.stringify(r))),this._logger.console.info(this._logger.name+": snowplow('trackPageView') Title ",t);var p=[this.getSnowplowContext()].concat(a(this.model.settings.customContexts));this._logger.console.info(this._logger.name+": snowplow('trackPageView') Payload ",JSON.parse(JSON.stringify(p))),this.snowplow("trackPageView",{context:p}),i._logger.console.info(i._logger.name+": Pageview snowplow('trackPageview') Complete"),this._logger.console.groupEnd()}else this._logger.console.warn(this._logger.name+": Service.trackPageview() called before Service is ready. Ignoring request.")},_loadSnowPlow:function(e,t){console.log("_loadSnowPlow snowplowAppId: ".concat(e));var n=this.model.settings.snowplow.scriptUrl;return new Promise((function(i,o){!function(e,t,n,i,o){if(!e.snowplow){e.GlobalSnowplowNamespace=e.GlobalSnowplowNamespace||[],e.GlobalSnowplowNamespace.push("snowplow"),e.snowplow=function(){(e.snowplow.q=e.snowplow.q||[]).push(arguments)},e.snowplow.q=e.snowplow.q||[];var r=t.createElement("script"),a=t.getElementsByTagName("script")[0];r.async=1,r.src=i,a.parentNode.insertBefore(r,a)}}(window,document,0,n),window.snowplow("newTracker","sp1",t,{appId:e,discoverRootDomain:!0,sessionCookieTimeout:3600,cookieSameSite:"Lax",contexts:{performanceTiming:!0}}),window.snowplow("enableLinkClickTracking"),window.snowplow("enableFormTracking"),i()}))}};var s=function(e){this.model=e,this._logger=this.model.logger,this._events={categories:{validate:!0,regexp:new RegExp("(^forms$)|(^add to cart$)|(^online ordering|chow\\s?now$)|(^email sign\\s?up trigger button$)|(^inquire trigger button$)|(^reservations trigger button$)|(^social icons$)|(^phone number$)|(^address$)|(^purchase$)|(^checkout$)|(^guest feedback$)|(^restaurant onboarding$)|(^customer websites$)|(^resy:\\s\\d+$)|(^KIOSK_SESSION$)","i"),list:[{id:"Forms",actions:{validate:!0,regexp:/(^submit$)/i,list:[{id:"Submit",labels:{validate:!0,regexp:/(^reservations.*$)|(^jobs$)|(^contact$)|(^catering$)|(^private events$)|(^email sign\s?up$)/i,list:[{id:"Reservations",values:{validate:!1}},{id:"Jobs",values:{validate:!1}},{id:"Contact",values:{validate:!1}},{id:"Catering",values:{validate:!1}},{id:"Private Events",values:{validate:!1}},{id:"Email Sign Up",values:{validate:!1}}]}}]}},{id:"Add To Cart",actions:{validate:!0,regexp:/(^click$)/i,list:[{id:"Click",labels:{validate:!0,regexp:/(^ecom$)|(^gift card[s]?$)|(^oo upsell ab header on$)/i,list:[{id:"eCom",values:{validate:!1}},{id:"Gift Cards",values:{validate:!1}},{id:"OO Upsell AB Header On",values:{validate:!1}}]}}]}},{id:"Online Ordering",actions:{validate:!0,regexp:/(^click$)/i,list:[{id:"Click",labels:{validate:!1}}]}},{id:"Email Sign Up Trigger Button",actions:{validate:!0,regexp:/(^click$)/i,list:[{id:"Click",labels:{validate:!1}}]}},{id:"Inquire Trigger Button",actions:{validate:!0,regexp:/(^click$)/i,list:[{id:"Click",labels:{validate:!0,regexp:/(^catering$)|(^private events$)/i,list:[{id:"Catering",values:{validate:!1}},{id:"Private Events",values:{validate:!1}}]}}]}},{id:"Reservations Trigger Button",actions:{validate:!0,regexp:/(^click$)/i,list:[{id:"Click",labels:{validate:!1}}]}},{id:"Social Icons",actions:{validate:!0,regexp:/(^click$)/i,list:[{id:"Click",labels:{validate:!1}}]}},{id:"Phone Number",actions:{validate:!0,regexp:/(^click$)/i,list:[{id:"Click",labels:{validate:!1}}]}},{id:"Address",actions:{validate:!0,regexp:/(^click$)/i,list:[{id:"Click",labels:{validate:!1}}]}},{id:"Purchase",actions:{validate:!0,regexp:/(^submit$)/i,list:[{id:"Submit",labels:{validate:!0,regexp:/(^ecom$)/i,list:[{id:"eCom",values:{validate:!1}}]}}]}},{id:"Checkout",actions:{validate:!0,regexp:/(^click$)|(^show$)|(^change$)/i,list:[{id:"Click",labels:{validate:!1}},{id:"Show",labels:{validate:!1}},{id:"Change",labels:{validate:!1}}]}},{id:"Guest Feedback",actions:{validate:!0,regexp:/(^click$)|(^show$)|(^change$)/i,list:[{id:"Click",labels:{validate:!1}},{id:"Show",labels:{validate:!1}},{id:"Change",labels:{validate:!1}}]}},{id:"Restaurant Onboarding",actions:{validate:!0,regexp:/(^click$)|(^show$)|(^change$)/i,list:[{id:"Click",labels:{validate:!1}},{id:"Show",labels:{validate:!1}},{id:"Change",labels:{validate:!1}}]}},{id:"Customer Websites",actions:{validate:!0,regexp:/(^click$)|(^show$)/i,list:[{id:"Click",labels:{validate:!1}},{id:"Show",labels:{validate:!1}}]}},{id:function(e,t){return t.location=e.split(" ")[1],"Resy"},actions:{validate:!0,regexp:/(^reservation placed$)/i,list:[{id:"Reservation Placed",labels:{validate:!1}}]}},{id:"KIOSK_SESSION",actions:{validate:!0,regexp:/(^click$)|(^change$)/i,list:[{id:"Click",labels:{validate:!1}},{id:"Change",labels:{validate:!1}}]}}]}}};s.prototype={pageview:function(e,t){var n={};return t&&(n.title=t),e&&(n.url=e),t||e?{page:n}:n},event:function(e,t,n,i){var o=!0,r={category:e,action:t,label:n,value:i};if(this._logger.console.group(this._logger.name+": Normalizing Event."),this._logger.console.info(this._logger.name+": Pre-Normalized Event Payload.",JSON.parse(JSON.stringify(r))),this._events.categories.validate){var a=this._findEventNode(e,this._events.categories);if(a)if(r.category=this._parseEventNodeId(a.id,e,r),this._logger.console.info(this._logger.name+": Category Found.",r.category),a.actions.validate){var s=this._findEventNode(t,a.actions);if(s)if(r.action=this._parseEventNodeId(s.id,t,r),this._logger.console.info(this._logger.name+": Action Found.",r.action),s.labels.validate){var l=this._findEventNode(n,s.labels);l?(r.label=this._parseEventNodeId(l.id,n,r),this._logger.console.info(this._logger.name+": Label Found.",r.label),l.values.validate?!isNaN(parseFloat(i))&&isFinite(i)?(r.value=i,this._logger.console.info(this._logger.name+": Value Found.",r.value)):(o=!1,this._logger.console.warn(this._logger.name+": Value Validation Failed.")):this._logger.console.info(this._logger.name+": Value Validation Disabled. Adding remain tiers as-is.")):(o=!1,this._logger.console.warn(this._logger.name+": Label Validation Failed."))}else this._logger.console.info(this._logger.name+": Label Validation Disabled. Adding remain tiers as-is.");else o=!1,this._logger.console.warn(this._logger.name+": Action Validation Failed.")}else this._logger.console.info(this._logger.name+": Label Validation Disabled. Adding remain tiers as-is.");else o=!1,this._logger.console.warn(this._logger.name+": Category Validation Failed.")}else this._logger.console.info(this._logger.name+": Category Validation Disabled. Adding remain tiers as-is.");var c=this._cleanEventPayload(r),d=o&&c?{event:c}:null;return d?this._logger.console.info(this._logger.name+": Post-Normalized Event Payload.",JSON.parse(JSON.stringify(d))):this._logger.console.warn(this._logger.name+": Post-Normalized Event Payload is invalid."),this._logger.console.groupEnd(),d},_findEventNode:function(e,t){if(e&&t){var n=t.regexp.exec(e);if(n&&n.length>1)for(var i=1;i